home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Medal Software 2
/
Gold Medal Software Volume 2 (Gold Medal) (1994).iso
/
prog
/
xlib30.arj
/
README.DOC
< prev
next >
Wrap
Text File
|
1993-12-21
|
9KB
|
184 lines
******************************************************************************
Registering XLIB
******************************************************************************
XLIB may be registered for $40. Registrants will be sent a registered
copy of the XLIB archive along with a printed copy of the user manual.
There are three ways to register XLIB:
1) By credit card through Public (software) Library:
You can order with MC, Visa, Amex, or Discover from Public (software)
Library by calling 800-2424-PsL or 713-524-6394 or by FAX to 713-524-6398
or by CIS Email to 71355,470. You can also mail credit card orders to PsL
at P.O.Box 35705, Houston, TX 77235-5705.
THE ABOVE NUMBERS ARE FOR ORDERS ONLY. Any questions about the status of
the shipment of the order, refunds, registration options, product details,
technical support, volume discounts, dealer pricing, site licenses, etc,
should NOT be directed to PsL. Direct all such questions to TechniLib.
2) Through CompuServe:
Use GO SWREG (shareware registration). The program identification number
is 1423. The program title is XLIB 3.0.
3) By mail to TechniLib:
Complete and mail the form in REGISTER.FRM
******************************************************************************
Communicating with TechniLib Via Electronic Mail
******************************************************************************
You can communicate with TechniLib via CompuServe electronic mail. Direct
mail to account 74730,167.
******************************************************************************
Quick Start with XLIB
******************************************************************************
The user manual is largely dedicated to cover specifics of XLIB which will
not be of concern to many programmers. A few notes are added here to expedite
matters for these programmers.
If all you need is the ability to access extended memory from within a
real-mode high-level langauge, then consider using EASYX rather than XLIB.
EASYX does not require usage or knowlege of assembly language. The
documentation for EASYX is in the file EASYX.DOC.
Most programmers will find nearly all that they need to know about XLIB
from the introductory chapter in the XLIB documentation. One should also
study the predefined selectors and descriptors in Chapter 2, and the GETMEM
and PMGETMEM functions in Chapter 7.
C programmers wishing to use inline protected-mode execution should study
the inline mode switch procedures in Chapter 5.
******************************************************************************
Instructions for Constructing Protected-Mode Libraries for Microsoft
******************************************************************************
The following batch file uses Microsoft LIB to combine an OBJ file with
XLIB.LIB to produce a protected-mode library. Call the batch file using the
base name of the OBJ file as the argument. This base name will also be given
to the library. It is assumed that all files, including LIB.EXE, are in the
current directory.
@echo on
del %1.lib
lib %1.lib /noi +%1.obj+xlib.lib;
The following batch file uses Microsoft LINK and LIB to combine an OBJ
file with XLIB.LIB to produce a protected-mode library and quick library for
Microsoft BASIC 7.0. Call the batch file using the base name of the OBJ
file as the argument. This base name will also be given to the library and
the quick library. It is assumed that all files, including LINK.EXE and
LIB.EXE, are in the current directory. The current directory must also
contain the file QBXQLB.LIB (included in the BASIC distribution disks).
@echo on
del %1.qlb
del %1.lib
link /q/nopackf xlib.lib+%1.obj,%1.qlb,,qbxqlb.lib;
lib %1.lib +xlib.lib+%1.obj;
******************************************************************************
Instructions for Constructing Libraries and Linking with Borland
******************************************************************************
The following batch file uses Borland TLIB to combine an OBJ file with
XLIBB.LIB to produce a protected-mode library. Call the batch file using the
base name of the OBJ file as the argument. This base name will also be given
to the library. It is assumed that all files, including TLIB.EXE, are in the
current directory.
@echo on
del %1.lib
tlib /C %1.lib +xlibb.lib+%1.obj
Borland C and Turbo C users can compile within the IDE; however, they must
use the command-line linker because an option will be needed which is not
included in the IDE linker. In particular, the /3 option will be needed to
enable processing of 32-bit segments. The appropriate commands to TLINK will
depend upon the memory model being used. The following batch command will
link a program called MYPROG with a library call MYLIB under the large memory
model. The batch command must be issued from the directory containing
MYPROG.OBJ. It is assumed that TLINK is in the ..\BIN directory and that
MYLIB.LIB is in the ..\LIB directory. It is also assumed that all of the C
link libraries are in the ..\LIB directory. The resulting executable will be
called MYPROG.EXE and the map file will be called MYPROG.MAP. The command
line is lengthy and is therefore broken into two lines below.
--------------------- model specification
. ----------------- obj file name
. | ---------- exe file name
. | | --- map file name
. ______ ______ ______
..\BIN\TLINK /3/c ..\LIB\C0L MYPROG,MYPROG,MYPROG,
..\LIB\MYLIB ..\LIB\FP87 ..\LIB\MATHL ..\LIB\CL
----- . .
| -------------- model specification
----------------------------------------- lib file name
To link under the small memory model, replace "L" with "S" at the model
specification characters. Use "M" for the medium model; "C" for the compact
model, and "H" for the huge model.
******************************************************************************
Instructions for Debugging in the Borland IDE
******************************************************************************
To run the IDE debugger, XLIB should be initialized for VCPI. However,
under the default behavior of the IDE, a VCPI program will not be able to
allocate extended memory within the IDE. There are potentially two reasons
for this. First, the default behavior of the DPMI kernel under which the
IDE operates is to claim all EMS memory and convert it to DPMI memory.
Since VCPI seeks extended memory through EMS, no extended memory will appear
to be available. To limit the memory consumption of the DPMI kernel,
include a statement such as the following in the batch file used to invoke
the IDE:
set dpmimem=maxmam 2000
This statement limits the memory usage of the DPMI kernel to 2000Kb. If
EMS memory exceeds this amount, then EMS memory will be available to the
IDE. However, EMS memory will not be available to a VCPI program running
within the IDE if the IDE has itself consumed all EMS memory. Therefore,
one may have to limit EMS memory usage of the IDE. This can be done in the
OPTIONS|ENVIRONMENT|STARTUP menu of the IDE. Typically, EMS memory usage
should be set to zero here.
******************************************************************************
Improvements in XLIB Version 2.0 Over Version 1.0
******************************************************************************
1) Procedures enabling protected-mode programming in C using inline assembly.
2) Protected-mode file routines which can transfer extended memory to files
or files to extended memory. Sequential and random access are supported.
3) Better interrupt management services.
4) User-defined descriptors.
5) More descriptors.
6) More configurability.
7) Minor bug fixes
8) Better documentation.
******************************************************************************
Improvements in XLIB Version 3.0 Over Version 2.0
******************************************************************************
1) Files included in Borland formats.
2) EASYX library included for those unfamiliar with assembly langauge.
3) MAPIO and PMMAPIO procedures added to XLIB for accessing memory-mapped
input/output devices.
4) Better documentation
******************************************************************************
Explanation of PMPRINT.ASM
******************************************************************************
Since protected-mode debuggers are hard to find, a programmer is greatly
assisted by a set of screen management routines when preparing such code. The
file PMPRINT.INC includes a set of basic screen routines for protected-mode.
Programmers using monochrome monitors will have to change the base address for
the screen. This file is included for your convenience.